今天學習條件控制中的switch,主要目的是在多個可能的條件下,比較「表達式或某變數的值」,並根據比對的結果來執行陳述式(statement)。
switch (expression) {
  case caseExpression1:
    statements
  case caseExpression2:
    statements
  // …
  case caseExpressionN:
    statements
  default:
    statements
}
先來看實際例子:
const drink = "咖啡";  // 消費者選擇飲料
switch (drink) {
    case "咖啡":  // 這裡是嚴格比對drink === "咖啡"
        console.log("咖啡的價格是 80 元");
        break;
    case "茶":
        console.log("茶的價格是 35 元");
        break;
    case "果汁":
        console.log("果汁的價格是 50 元");
        break;
    default:
        console.log("很抱歉,我們沒有這種飲料。");
}
// 印出 "咖啡的價格是 80 元"
===
break,用來結束當前條件的執行。如果沒有加,不論有沒有符合條件,後面所有的陳述式都會執行如沒有加break終止,則全部陳述式都會執行:
補充:
嚴格相等===是會比較型別和值。例如:5 === "5"在一般相等==結果為true,在嚴格相等則為false,因為一個是數值,另一個是字串。
MDN - switch
重新認識 JavaScript: Day 09 流程判斷與迴圈